Utilities may use communication systems to read data from electricity, water, and/or gas meters. These communication systems and meters may be installed at customer locations and used to measure consumption and other parameters to determine a customer's monthly bill. Communication systems and smart meters, for example, may communicate in advanced metering infrastructure (AMI) networks.
AMI networks increasingly communicate with end devices, such as metering devices, which are manufactured by multiple vendors. Similarly, end devices increasingly communicate with different AMI networks with varying communication topologies and different communication protocols. Additionally, some end devices may be programmed or reconfigured remotely. Generally, each end device manufacturer has developed specific programming tools to reconfigure its own devices. For example, a manufacturer's reconfiguration or programming process may involve any number of operations that are executed in a specific sequence.
Existing approaches to reconfiguring end devices via AMI networks lack efficiency and stability. For example, an existing approach reconfigures an end device through a network one step at a time, resulting in a partially reconfigured end device if network communications interrupt the programming sequence. When a communication failure occurs during reconfiguration, for example, the end device may be left in an inoperable state or left in an operable state with a partial configuration. Another existing approach to remote end device reconfiguration through an AMI system is to utilize device “pending tables”. In this approach, each configurable component in an end-device may have a pending table to hold the new configuration until all reconfiguration or programming is complete. As the number of devices and device types increases and varies, for example, managing accurate pending tables (e.g., by an AMI head-end device) for various devices becomes increasingly complex and inefficient.
Existing approaches also present security issues. For example, some existing approaches expose sensitive end device programming information to an AMI system.